1. Field of the Invention
The present invention relates to a coordinate input apparatus for detecting a point position on a coordinate input region, a control method thereof, and a program.
2. Description of the Related Art
There exist coordinate input apparatuses which are used to input coordinates to a coordinate input surface by using a pointer (e.g., a dedicated input pen or finger) to control a connected computer or write characters and graphics.
Conventionally, as coordinate input apparatuses of this type, touch panels of various schemes have been proposed or become commercially available. These apparatuses are widely used because a terminal such as a personal computer can easily be operated on the screen without using any special tool.
There are various coordinate input schemes using, e.g., a resist film or an ultrasonic wave. A scheme using light is disclosed in, e.g., U.S. Pat. No. 4,507,557. In U.S. Pat. No. 4,507,557, a retroreflecting sheet is provided outside the coordinate input region. By illumination units which are arranged at the corners of the coordinate input region to emit light and light receiving units which receive light, the angles between the light receiving units and a shielding object such as a finger that shields light in the coordinate input region are detected. On the basis of the detection result, the point position of the shielding object is determined.
Japanese Patent Laid-Open No. 2000-105671 or 2001-142642 discloses a coordinate input apparatus that includes a retroreflecting member arranged on the periphery of the coordinate input region and detects the coordinates of a point (light-shielding portion) where retroreflected light is shielded.
In the apparatus of, e.g., Japanese Patent Laid-Open No. 2000-105671, the peak of the light-shielding portion by the shielding object, which is received by the light receiving unit, is detected by waveform processing, such as differentiation. The angle of the light-shielding portion with respect to the light receiving unit is detected, and the coordinates of the shielding object are calculated from the detection result. In Japanese Patent Laid-Open No. 2001-142642, comparison with a specific level pattern is done to detect one end and the other end of a light-shielding portion, and the center of the coordinates is detected.
The scheme of calculating coordinates by detecting a light-shielding position as in U.S. Pat. No. 4,507,557, Japanese Patent Laid-Open No. 2000-105671, and Japanese Patent Laid-Open No. 2001-142642 will be referred to as a light-shielding scheme hereinafter.
Such a coordinate input apparatus of light-shielding scheme is required to allow simultaneous operations of a plurality of operators to increase the convenience for efficient use in, e.g., a conference especially when the size of the coordinate input region is large. Hence, coordinate input apparatuses capable of coping with a plurality of simultaneous inputs have been devised.
To simultaneously input a plurality of coordinate points, in Japanese Patent Laid-Open Nos. 2002-055770 and 2003-303046 and Japanese Patent Registration No. 2896183, one light receiving sensor detects the angles of a plurality of light-shielding portions. Several input coordinate candidates are calculated on the basis of the combinations of the sensor angles. An actually input coordinate point is determined from the input coordinate candidates.
In, e.g., two-point input, a maximum of four coordinate points are calculated as input coordinate candidates. Of the four points, two actually input coordinate points are determined and output. That is, actual input coordinate points and false input coordinate points are discriminated from the plurality of input coordinate candidates, and final input coordinate points are determined. This determination will be referred to as “truth determination” hereinafter.
Japanese Patent Laid-Open No. 2003-303046 and Japanese Patent Registration No. 2896183 disclose detailed methods of truth determination. In these references, first and second sensors are provided at the two ends of one side of a conventional coordinate input region while being spaced apart by a sufficient distance to accurately calculate coordinates pointed in the coordinate input region. In addition, a third sensor is provided between the first and second sensors, while being spaced apart from them by a sufficient distance to accurately calculate coordinates pointed in the input region. On the basis of angle information in the third sensor which is different from those of the first and second sensors, truth is determined for a plurality of pieces of angle information detected by the first and second sensors.
Japanese Patent Laid-Open No. 2004-69483 discloses a method capable of detecting a plurality of point inputs and accurately calculating position coordinates corresponding to each point input. In Japanese Patent Laid-Open No. 2004-69483, a coordinate input apparatus has been devised which calculates, for one point target, coordinates as the intersection of bisectors of tangents on the basis of the angle information of at least three light-shielding ends of pieces of angle information of light-shielding ends serving as a plurality of tangents generated from the light-shielding shadows of sensors. This apparatus can calculate coordinates on the basis of information of one end of a light-shielding shadow of the point target, rather than information of two ends thereof. Hence, the coordinates can be calculated even when a light shield overlap occurs.
The conventional light-shielding scheme is a technique of detecting angles from the peak of light amount distribution of a light-shielding portion or the center of light amount distribution, which is defined by the two ends of light amount distribution related to a light-shielding shadow, and calculating point coordinates from combinations of angles detected by light receiving units. According to this technique, when coordinates are simultaneously input to a plurality of portions, e.g., at least two portions, the two input points may overlap almost linearly from a light receiving unit.
If light-shielding shadows corresponding to the two input points overlap in the light receiving unit, it is impossible to separate the light-shielding shadows and detect the angle of each input point. Hence, input is disabled.
A detailed example of this will be described with reference to FIG. 26.
For example, it is presumed that coordinates are input by pointers A and B to the positions in the coordinate input region as shown in FIG. 26. Light amount distributions corresponding to the pointers A and B in a light receiving unit S2 are indicated by A and B in FIG. 27B. In this case, light-shielding shadows corresponding to the two light-shielding positions of the pointers A and B are separated and detected.
FIG. 27A shows a light amount distribution as reference data without point input. Referring to FIG. 27A, the valley of the light amount distribution at a position C is generated due to, e.g., attenuation by the angular characteristic and distance of the retroreflecting member provided around the coordinate input region.
FIG. 27C shows light amount distributions corresponding to the pointers A and B in a light receiving unit S1 shown in FIG. 26. Light-shielding shadows corresponding to the two positions of the pointers A and B are detected in an overlapping state. In the information of the light amount distribution (shielded light amount distribution) with overlapping light-shielding shadows (light shield overlap), when A and B in FIG. 27B partially overlap (partial eclipse occurs), as shown in FIG. 27C, the end information in the light-shielding range of only one pointer is obtained. For this reason, the coordinates of the pointers A and B cannot be calculated by the conventional method of calculating a position (angle) on the basis of the center or central pixel number of information of two ends of the light-shielding range.
In addition, when the shadow of the first pointer on the near side completely includes the shadow of the second pointer on the far side (total eclipse occurs), the central position (angle) of the first pointer on the near side can be calculated from the two ends of the light-shielding shadow. However, no information about the second pointer on the far side can be obtained.
In the prior art, the number of light-shielding shadows generated by simultaneous input of a plurality of pointers is detected in advance. For example, if the number of light-shielding shadows detected by the second light receiving unit is “2”, and the number of light-shielding shadows detected by the first light receiving unit is “1”, it is determined that the light-shielding shadows corresponding to the pointers overlap in the light amount distribution detected by the first light receiving unit.
In this case, the arrangement disclosed in Japanese Patent Registration No. 2896183 issues a warning indicating that the situation has arisen, in order to call the matter to the user's attention and avoid the situation. In Japanese Patent Laid-Open No. 2002-055770 or 2003-303046, the first light receiving unit is switched to the third light receiving unit capable of detecting two separated light-shielding shadows without overlap. The angle is detected by the light receiving units (in this case, the first and third light receiving units) capable of detecting the two light-shielding shadows. The above-described truth determination is executed for input coordinate candidates obtained from the light receiving units, thereby determining the final actual input coordinates of two points.
In this case, truth determination can be executed sufficiently by using the angle information of the light receiving unit that detects light shield overlap. In Japanese Patent Laid-Open No. 2003-303046 or Japanese Patent Registration No. 2896183, truth determination is executed on the basis of the angle information of the light receiving unit that detects the light shield overlap.
As described above, in the coordinate input apparatus of light-shielding scheme, when, e.g., two pointers input positions simultaneously, and light shield overlap occurs even partially with respect to a light receiving unit, the light-shielding shadows corresponding to the two pointers may be connected inseparably. If calculation is done regarding the connected light-shielding shadows as, e.g., the shadow of one pointer, the coordinate detection accuracy degrades because of the shift from the actual position.
In Japanese Patent Laid-Open No. 2004-69483, in both the complete eclipse and the partial eclipse, coordinates can be calculated as the intersection of bisectors of tangents on the basis of the angle information of at least three light-shielding ends of pieces of angle information of light-shielding ends serving as a plurality of tangents generated from the light-shielding shadows of sensors in correspondence with one point target. However, the following problem remains unsolved.
In the coordinate input apparatus of this type, a plurality of sensor units are provided around the input region. In addition, a retroreflecting member is arranged on the left, right, upper, or lower side of the input region. Each sensor unit projects light to the retroreflecting member and receives light reflected by the retroreflecting member. Each sensor unit detects a shadow formed when a pointer shields projected or reflected light, thereby detecting the direction of the input position of the pointer viewed from the sensor unit and detecting the coordinate position indicated by the pointer. For this purpose, all sensor units must accurately detect the number and positions (angles) of shadows formed by shielding light.
However, if an individual characteristic varies, such as the sensitivity of each sensor unit, or the light projecting path and light receiving path of each sensor unit change depending on the input region, the following problem may arise. A shadow which is formed by light shielding by the pointer and should be detected simultaneously by a plurality of predetermined sensor units is detected at a predetermined position by a specific sensor unit but not detected at the predetermined position by another specific sensor unit. That is, the timing until the pointer reaches the input surface and completely forms a shadow (this state will be referred to as an “input transient state” hereinafter) may change between the sensor units.
If the shadow that should be detected cannot be detected, as described above, it is impossible to reliably detect the coordinates. The influence of this problem is especially serious when a plurality of inputs are done simultaneously by a plurality of pointers. The numbers of light-shielding ranges detected by the respective sensor units may become equal as if partial overlap of the pointers occurred. In some cases, wrong coordinates may be detected as if a pointer inputted at an impossible position.
For example, assume that pointer inputs are done at positions A and B, as shown in FIG. 28. A sensor S2 detects pieces of light-shielding end information A11, A12, A13, and A14. Similarly, a sensor S1 should detect pieces of light-shielding end information B11, B12, B13, and B14. In the input transient state, however, the sensor S1 may detect only the pieces of light-shielding end information B11 and B12. When calculation is executed by using the center of each light-shielding range, the coordinates of points A and P11 are detected. Even when coordinates are calculated by calculating the intersection of bisectors on the basis of three pieces of light-shielding end information, the coordinates of the points A and P21 or P22 are calculated. Hence, the points P11, P21, and P22 are calculated to be different from the point B.
U.S. Pat. No. 4,507,557, Japanese Patent Laid-Open Nos. 2000-105671, 2001-142642, 2002-055770, and 2003-303046, Japanese Patent Registration No. 2896183, and Japanese Patent Laid-Open No. 2004-69483 described above have no description of a means for solving this problem.